package com.zzyl.nursing.vo;


import com.zzyl.nursing.domain.DeviceData;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @author 20243
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class GetRoomsWithDeviceByFloorIdVO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     *  房间id
     */
    private Long id;
    /**
     *  房间编号
     */
    private String code;
    /**
     * 房间设备列表
     */
    private List<DeviceVO> deviceVos;
    /**
     *  房间床位列表
     */
    private List<BedVO> bedVoList;

    /**
     *  设备VO
     */
    @Data
    public static class DeviceVO implements Serializable{
        private static final long serialVersionUID = 1L;

        private Long id;

        /**
         *  设备id唯一标识
         */
        private String  iotId;
        /**
         *  产品名品
         */
        private String  productName;
        /**
         * 设备名称
         */
        private String  deviceName;
        /**
         * 设备数据
         */
        private List<DeviceDataVO> deviceDataVos;
    }

    /**
     *  设备数据VO
     */
    @Data
    @SuppressWarnings("all")
    public static class DeviceDataVO extends DeviceData implements Serializable {
        //TODO
    }

    /**
     *  床位VO
     */
    @Data
    public static class BedVO implements Serializable{
        private static final long serialVersionUID = 1L;
        /**
         *  床位id
         */
        private Long  id;
        /**
         * 床位的状态
         */
        private Integer  bedStatus;
        /**
         *  床位编号
         */
        private String  bedNumber;
        /**
         * 入住老人姓名
         */
        private String  ename;
        /**
         * 床位设备列表
         */
        private List<DeviceVO> deviceVos;
    }
}
